package cn.iocoder.yudao.module.trade.controller.app.order.vo;

import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.common.validation.InEnum;
import cn.iocoder.yudao.module.trade.enums.order.TradeOrderStatusEnum;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

@Schema(description = "交易订单分页 Request VO")
@Data
public class AppTradeOrderPageReqVO extends PageParam {

    @Schema(description = "订单状态", example = "1")
    @InEnum(value = TradeOrderStatusEnum.class, message = "订单状态必须是 {value}")
    private Integer status;

    @Schema(description = "是否评价", example = "true")
    private Boolean commentStatus;

    @Schema(description = "订单类型", example = "1")
    private Integer type;

    /**
     * 拼团团长编号
     *
     * 关联 CombinationRecordDO 的 headId 字段
     */
    @Schema(description = "拼团团长编号", example = "1")
    private Long combinationHeadId;

    /**
     * 分享状态[0/无需分享 1/未分享 2/已分享]
     */
    @Schema(description = "分享状态", example = "1")
    private Integer shareStatus;

    /**
     * 分享状态[0/无需分享 1/未分享 2/已分享]
     */
    @Schema(description = "不等于的分享状态", example = "1")
    private Integer neShareStatus;

}
